package ArrayList集合;
import java.util.ArrayList;
/*基本数据类型对应的包装类
        char               Character
        int                lnteger
        以上两个关键字发生改变，其他基本数据类型只需要把首字母变成大写即可，如short改成Short，float改成Float
                */
public class ArreyList1 {
    public static void main(String[] args) {
        //创建集合ArreyList,其只能存储引用数据类型，不能存储基本数据类型，除非将基本数据类型变成包装类
        ArrayList<String> list = new ArrayList<>();//String是引用数据类型,注意<>符号不能省略,此为String类型的集合
        //ArrayList<int> list1 =new ArrayList<>();//本行会报错，因为int是基本数据类型，且特殊，int改为Integer
        //ArrayList<Integer> list1 =new ArrayList<>();//int是基本数据类型，且特殊，int改为Integer
        //ArrayList<Float> list2 =new ArrayList<>();//float是基本数据类型，只需把首字母改成大写即可，即float改成Float
        System.out.println(list);//此时输出为空，即[]

        //添加数据 add
        boolean a1 = list.add("aaa");//自动生成，为布尔数据类型
        boolean a2 = list.add("bbb");
        boolean a3 = list.add("ccc");
        boolean a4 = list.add("ddd");

//        list.add(1, "ooo");//表示在索引为1的位置插入“000”元素，原位置的元素会往后一位

        System.out.println(a1);//结果为true，说明数据添加成功
        System.out.println(list.get(0));//输出aaa,即获取索引为0的值
        System.out.println(list.get(1));//输出bbb
        System.out.println(list);//输出列表的所有内容，即[aaa, bbb, ccc, ddd]

        //删除数据 remove
        String r1 = list.remove(0);//删除索引为0的数据,自动生成是为与集合同数据类型
//        boolean ooo = list.remove("ddd");//直接删除“ooo”元素，部分类型需要注意，去看看text2
        System.out.println(list);//输出[bbb, ccc, ddd]
        System.out.println(r1);//显示被删除的数据，即aaa

        list.remove(2);//删除索引为2的数据,自动生成是为与集合同数据类型
        System.out.println(list);//输出[bbb, ccc]

        //改变集合的数据 set
        String r2 = list.set(0, "fff");//将索引为0的数据改为fff,动生成是为与集合同数据类型，格式为（索引，改成的值）
        System.out.println(r2);//显示被改变的数据，即0索引的bbb，并将其改为fff
        System.out.println(list);//输出改变后的集合，即[fff, ccc]

        //获取集合的长度 size
        int s1 = list.size();
        System.out.println(s1);

        //获取集合的数据 get
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));//或取索引为i的元素
        }//输出集合的全部数据
    }
}
